const { Document } = require("docx");
const fs = require("fs");

// 读取 .docx 文件
const filePath = "resources/template/xwbl.docx"; // 替换为你的文件路径
const buffer = fs.readFileSync(filePath);

// 使用 Document.load 方法加载文档
const doc = Document.load(buffer);

// 遍历文档的每个部分（section）
doc.sections.forEach((section, sectionIndex) => {
  console.log(`Section ${sectionIndex + 1}:`);

  // 遍历每个部分中的内容（通常是段落或表格等）
  section.children.forEach((element, elementIndex) => {
    if (element.type === "paragraph") {
      // 处理段落
      const paragraph = element;
      console.log(`Paragraph ${elementIndex + 1}: ${paragraph.text}`);

      // 段落的结尾可以认为是行的结尾
      console.log("Paragraph End (Line End)");

      // 如果需要更细粒度的行判断，可以分析段落中的 runs
      paragraph.children.forEach((run) => {
        if (run.type === "run") {
          const runText = run.text;
          console.log(`Run: ${runText}`);
        }
      });
    } else if (element.type === "pageBreak") {
      // 判断是否是页的结尾
      console.log("Page End");
    } else {
      // 其他类型的元素（如表格等）
      console.log(`Element type: ${element.type}`);
    }
  });
});